package de.grosjohann.android.feuerwehr.type;

import java.io.Serializable;

import android.content.res.Resources;
import de.grosjohann.android.feuerwehr.R;

public enum FMSStatusType implements Serializable {

  EINSATZBEREIT_FUNK(1, R.string.EINSATZBEREIT_FUNK),

  EINSATZBEREIT_GH(2, R.string.EINSATZBEREIT_GH),

  EINSATZ_UEBERNOMMEN(3, R.string.EINSATZ_UEBERNOMMEN),

  EINSATZSTELLE_AN(4, R.string.EINSATZSTELLE_AN),

  SPRECHWUNSCH(5, R.string.SPRECHWUNSCH),

  NICHT_EINSATZBEREIT(6, R.string.NICHT_EINSATZBEREIT),

  STATUS7(7, R.string.STATUS7),

  STATUS8(8, R.string.STATUS8),

  STATUS9(9, R.string.STATUS9),

  NOTRUF(0, R.string.NOTRUF);

  private int status = 2;
  private int resId;

  private FMSStatusType(int newStatus, int newResId) {
    status = newStatus;
    resId = newResId;
  }

  public int getStatus() {
    return status;
  }

  public int getResId() {
    return resId;
  }

  @Override
  public String toString() {
    return Resources.getSystem().getString(resId);
  }

  public static FMSStatusType valueOf(int status) {
    for (FMSStatusType type : FMSStatusType.values()) {
      if (type.status == status) {
        return type;
      }
    }
    throw new IllegalArgumentException("Status not supported: " + status);
  }

}
